# pip
# pip : python install package , python 包管理工具。安装python解释器时已自带。目录已添加到坏境变量中。
# 包管理工具: 包是别人写好的代码。。经常有这种情况，比如爬虫框架功能的A包，里面引用了负责解析网页的B包，B包引用了更加基础底层的C包。包关系成数装引用。B包依赖C包。直接使用A包，运行报错缺少B包，缺少依赖包。
# 为了解决依赖包问题，包管理工具出现，主要功能:管理、下载、上传包。解决依赖，安装一个包时会把相关的依赖包都安装好。

# pypi: https://pypi.org/
# 是查找、安装、发布python包的一个平台。pip工具默认从pypi下载包。


"""
pip list  # 输出安装过的三方包的列表。
pip search 关键字  #搜索包含关键字的包名
pip install 包名   #(常用)安装包。 安装包的本质是从pypi下载，解压复制到C:\python36\Lib\site-packages    下。默认安装包的最新版本。
pip install requests==2.19.0
pip uninstall 包名  # 卸载包

"""


"""
批量备份和安装
pip freeze  > requirement.txt  # 讲解释器中的包和版本导出到一个文件中

pip install  requirement.txt #根据requirement.txt的信息批量安装对应版本的包。
"""

"""
pip 安装速度慢的问题:
因为服务器在国外,为了改善这个问题,国内一些厂商或大学做了pypi网站的镜像。
国内的镜像站豆瓣源、网易源。
常用国内源：
豆瓣：http://pypi.douban.com/simple/ 
清华：https://pypi.tuna.tsinghua.edu.cn/simple

永久修改(推荐):
[global]
index-url = https://pypi.douban.com/simple/ 

"""

"""
python虚拟解释器坏境
场景:公司不同时期的多个开发项目,使用的python大版本和各个包的版本不尽相同。
每个项目要求有一套让自己成功运行的解释器。一个程序员可能同时开发多个项目，电脑上需要有多套python解释器跟项目一一对应。
解决：我们电脑现在只有一套python解释器，已它基础，虚拟出几个解释器的备份。
老的教材中要先安装virtualenv(虚拟environment坏境)，因为使用较多，所以py3.4起官方直接内置了venv包。

(cmd)python -m venv 虚拟坏境创建完发现虚拟环境具备python.exe pip.exe active.bat, Lib库中除了pip包是空的，就好像刚重装完电脑系统。
(cmd) cd 虚拟环境名/Scripts
(cmd) activate.bat    #激活虚拟环境
激活虚拟坏境后可以pip install跟项目配合的包，python app.py。如果有多个项目,就生成多个虚拟环境一一搭配。好处,实现了项目坏境隔离。
"""


"""
可能出现的错误:
1. 拒绝访问。权限问题,使用管理员权限的终端运行
以下不影响:
2.最后黄字警告。pip版本升级提示，可以忽略
3.黄字警告，pip所在的目录没有添加的坏境变量中。
4.requirement already satisfied。之前已经成功安装过此包了。
5.cache 缓存。之前已经下载过安装包，再次安装时不会
"""




